]> git.pld-linux.org Git - packages/gtk+3.git/blob - gtk+3.spec
1ffe55587acdb7418ed6b646c0ed272bdef2f04a
[packages/gtk+3.git] / gtk+3.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # disable gtk-doc
4 %bcond_without  cups            # disable CUPS support
5 %bcond_without  papi            # disable PAPI support
6 %bcond_without  static_libs     # don't build static library
7
8 Summary:        The GIMP Toolkit
9 Summary(cs.UTF-8):      Sada nástrojů pro GIMP
10 Summary(de.UTF-8):      Der GIMP-Toolkit
11 Summary(fi.UTF-8):      GIMP-työkalukokoelma
12 Summary(fr.UTF-8):      Le toolkit de GIMP
13 Summary(it.UTF-8):      Il toolkit per GIMP
14 Summary(pl.UTF-8):      GIMP Toolkit
15 Summary(tr.UTF-8):      GIMP ToolKit arayüz kitaplığı
16 Name:           gtk+3
17 Version:        3.8.0
18 Release:        1
19 License:        LGPL v2+
20 Group:          X11/Libraries
21 Source0:        http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.8/gtk+-%{version}.tar.xz
22 # Source0-md5:  ee8042469449c2bc702dbd9fa690f405
23 Patch0:         %{name}-papi.patch
24 URL:            http://www.gtk.org/
25 BuildRequires:  at-spi2-atk-devel >= 2.6.0
26 BuildRequires:  atk-devel >= 1:2.8.0
27 BuildRequires:  autoconf >= 2.62
28 BuildRequires:  automake >= 1:1.11
29 BuildRequires:  cairo-gobject-devel >= 1.10.0
30 BuildRequires:  colord-devel >= 0.1.9
31 %if %{with cups} || %{with papi}
32 BuildRequires:  cups-devel >= 1:1.2
33 %endif
34 BuildRequires:  docbook-dtd412-xml
35 BuildRequires:  docbook-style-xsl
36 BuildRequires:  gdk-pixbuf2-devel >= 2.28.0
37 BuildRequires:  gettext-devel
38 BuildRequires:  glib2-devel >= 1:2.36.0
39 BuildRequires:  gobject-introspection-devel >= 1.32.0
40 %if %{with apidocs}
41 BuildRequires:  gtk-doc >= 1.11
42 BuildRequires:  gtk-doc-automake >= 1.11
43 %endif
44 BuildRequires:  libstdc++-devel
45 BuildRequires:  libtool >= 2:2.2.6
46 BuildRequires:  libxml2-progs >= 1:2.6.31
47 BuildRequires:  libxslt-progs >= 1.1.20
48 BuildRequires:  pango-devel >= 1:1.32.4
49 %{?with_papi:BuildRequires:     papi-devel}
50 BuildRequires:  perl-base
51 BuildRequires:  pkgconfig
52 BuildRequires:  rpm-pythonprov
53 BuildRequires:  rpmbuild(macros) >= 1.592
54 BuildRequires:  sqlite3-devel
55 BuildRequires:  tar >= 1:1.22
56 BuildRequires:  wayland-devel >= 1.0.0
57 BuildRequires:  xorg-lib-libX11-devel >= 1.5.0
58 BuildRequires:  xorg-lib-libXcomposite-devel
59 BuildRequires:  xorg-lib-libXcursor-devel
60 BuildRequires:  xorg-lib-libXdamage-devel
61 BuildRequires:  xorg-lib-libXext-devel
62 BuildRequires:  xorg-lib-libXfixes-devel
63 BuildRequires:  xorg-lib-libXft-devel
64 BuildRequires:  xorg-lib-libXi-devel
65 BuildRequires:  xorg-lib-libXinerama-devel
66 BuildRequires:  xorg-lib-libXrandr-devel >= 1.3.0
67 BuildRequires:  xorg-lib-libXrender-devel
68 BuildRequires:  xorg-lib-libxkbcommon-devel
69 BuildRequires:  xz
70 Requires:       xorg-lib-libX11 >= 1.5.0
71 Requires(post,postun):  glib2 >= 1:2.36.0
72 Requires:       atk >= 1:2.8.0
73 Requires:       cairo-gobject >= 1.10.0
74 Requires:       gdk-pixbuf2 >= 2.28.0
75 Requires:       glib2 >= 1:2.36.0
76 Requires:       pango >= 1:1.32.4
77 Requires:       xorg-lib-libXi >= 1.3.0
78 Requires:       xorg-lib-libXrandr >= 1.3.0
79 # evince is used as gtk-print-preview-command by default
80 Suggests:       evince-backend-pdf
81 %if %{with cups}
82 # cups is used by default if gtk+ is built with cups
83 Suggests:       %{name}-cups = %{version}-%{release}
84 %endif
85 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
86
87 %define         abivers 3.0.0
88
89 %if "%{_lib}" != "lib"
90 %define         libext          %(lib="%{_lib}"; echo ${lib#lib})
91 %define         pqext           -%{libext}
92 %else
93 %define         pqext           %{nil}
94 %endif
95
96 %description
97 GTK+, which stands for the GIMP ToolKit, is a library for creating
98 graphical user interfaces for the X Window System. It is designed to
99 be small, efficient, and flexible. GTK+ is written in C with a very
100 object-oriented approach. GDK (part of GTK+) is a drawing toolkit
101 which provides a thin layer over Xlib to help automate things like
102 dealing with different color depths, and GTK is a widget set for
103 creating user interfaces.
104
105 %description -l cs.UTF-8
106 Knihovny X původně psané pro GIMP, které nyní používá také řada jiných
107 programů.
108
109 %description -l da.UTF-8
110 X biblioteker, oprindeligt udviklet til GIMP, men anvendes nu af flere
111 forskellige programmer.
112
113 %description -l de.UTF-8
114 Die X-Libraries, die ursprünglich für GIMP geschrieben wurden und
115 mittlerweile für eine ganze Reihe anderer Programme benutzt werden.
116
117 %description -l fr.UTF-8
118 X-kirjastot, jotka alunperin kirjoitettiin GIMP:lle, mutta joita
119 käytetään nyt myös useissa muissakin ohjelmissa.
120
121 %description -l it.UTF-8
122 Libreria X scritta per GIMP. Viene usata da diversi programmi.
123
124 %description -l pl.UTF-8
125 GTK+, która to biblioteka stała się podstawą programu GIMP, zawiera
126 funkcje do tworzenia graficznego interfejsu użytkownika pod X Window.
127 Była tworzona z założeniem żeby była mała, efektywna i wygodna. GTK+
128 jest napisane w C z podejściem zorientowanym bardzo obiektowo. GDK
129 (część GTK+) jest warstwą pośrednią pomiędzy Xlib a właściwym GTK
130 zapewniającą pracę niezależnie od głębi koloru (ilości bitów na
131 piksel). GTK (druga część GTK+) jest natomiast już zbiorem różnego
132 rodzaju kontrolek służących do tworzenia interfejsu użytkownika.
133
134 %description -l tr.UTF-8
135 Başlangıçta GIMP için yazılmış X kitaplıkları. Şu anda başka
136 programlarca da kullanılmaktadır.
137
138 %package -n gtk-update-icon-cache
139 Summary:        Utility to update icon cache used by GTK+ library
140 Summary(pl.UTF-8):      Narzędzie do uaktualniania cache'a ikon używanego przez bibliotekę GTK+
141 Group:          Applications/System
142 Requires:       gdk-pixbuf2 >= 2.28.0
143 Requires:       glib2 >= 1:2.36.0
144
145 %description -n gtk-update-icon-cache
146 Utility to update icon cache used by GTK+ library.
147
148 %description -n gtk-update-icon-cache -l pl.UTF-8
149 Narzędzie do uaktualniania cache'a ikon używanego przez bibliotekę
150 GTK+.
151
152 %package devel
153 Summary:        GTK+ header files and development documentation
154 Summary(cs.UTF-8):      Sada nástrojů GIMP a kreslící kit GIMP
155 Summary(da.UTF-8):      GIMP Toolkit og GIMP Tegnings-værktøj
156 Summary(de.UTF-8):      GIMP Toolkit und GIMP Drawing Kit
157 Summary(fi.UTF-8):      Gimp-työkalukokoelma ja Gimp-piirtotyökalut
158 Summary(fr.UTF-8):      Toolkit de GIMP (GTK) et Kit de dessin de GIMP (GDK)
159 Summary(it.UTF-8):      GIMP Toolkit and GIMP Drawing Kit
160 Summary(pl.UTF-8):      Pliki nagłówkowe i dokumentacja do GTK+
161 Summary(tr.UTF-8):      GIMP araç takımı ve çizim takımı
162 Group:          X11/Development/Libraries
163 Requires:       %{name} = %{version}-%{release}
164 Requires:       at-spi2-atk-devel >= 2.6.0
165 Requires:       atk-devel >= 1:2.8.0
166 Requires:       cairo-gobject-devel >= 1.10.0
167 Requires:       gdk-pixbuf2-devel >= 2.28.0
168 Requires:       glib2-devel >= 1:2.36.0
169 Requires:       pango-devel >= 1:1.32.4
170 Requires:       shared-mime-info
171 Requires:       xorg-lib-libX11-devel
172 Requires:       xorg-lib-libXcomposite-devel
173 Requires:       xorg-lib-libXcursor-devel
174 Requires:       xorg-lib-libXdamage-devel
175 Requires:       xorg-lib-libXext-devel
176 Requires:       xorg-lib-libXfixes-devel
177 Requires:       xorg-lib-libXft-devel
178 Requires:       xorg-lib-libXi-devel
179 Requires:       xorg-lib-libXinerama-devel
180 Requires:       xorg-lib-libXrandr-devel >= 1.3.0
181 Requires:       xorg-lib-libXrender-devel
182
183 %description devel
184 Header files and development documentation for the GTK+ libraries.
185
186 %description devel -l pl.UTF-8
187 Pliki nagłówkowe i dokumentacja do bibliotek GTK+.
188
189 %package static
190 Summary:        GTK+ static libraries
191 Summary(pl.UTF-8):      Biblioteki statyczne GTK+
192 Group:          X11/Development/Libraries
193 Requires:       %{name}-devel = %{version}-%{release}
194
195 %description static
196 GTK+ static libraries.
197
198 %description static -l pl.UTF-8
199 Biblioteki statyczne GTK+
200
201 %package apidocs
202 Summary:        GTK+ API documentation
203 Summary(pl.UTF-8):      Dokumentacja API GTK+
204 Group:          Documentation
205 Requires:       gtk-doc-common
206
207 %description apidocs
208 GTK+ API documentation.
209
210 %description apidocs -l pl.UTF-8
211 Dokumentacja API GTK+.
212
213 %package examples
214 Summary:        GTK+ - example programs
215 Summary(pl.UTF-8):      GTK+ - programy przykładowe
216 Group:          X11/Development/Libraries
217 Requires(post,postun):  glib2 >= 1:2.36.0
218 Requires:       %{name}-devel = %{version}-%{release}
219
220 %description examples
221 GTK+ - example programs.
222
223 %description examples -l pl.UTF-8
224 GTK+ - przykładowe programy.
225
226 %package cups
227 Summary:        CUPS printing module for GTK+
228 Summary(pl.UTF-8):      Moduł GTK+ do drukowania przez CUPS
229 Group:          X11/Libraries
230 Requires:       %{name} = %{version}-%{release}
231
232 %description cups
233 CUPS printing module for GTK+.
234
235 %description cups -l pl.UTF-8
236 Moduł GTK+ do drukowania przez CUPS.
237
238 %package papi
239 Summary:        PAPI printing module for GTK+
240 Summary(pl.UTF-8):      Moduł GTK+ do drukowania przez PAPI
241 Group:          X11/Libraries
242 Requires:       %{name} = %{version}-%{release}
243 Requires:       papi
244
245 %description papi
246 PAPI printing module for GTK+.
247
248 %description papi -l pl.UTF-8
249 Moduł GTK+ do drukowania przez PAPI.
250
251 %prep
252 %setup -q -n gtk+-%{version}
253 %patch0 -p1
254
255 # for packaging clean examples
256 # TODO: add am patch to do it like demos/gtk-demo via some configurable dir
257 # NOTE: make install so far installs only demos/gtk-demo
258 install -d _examples
259 cp -a demos examples _examples
260
261 %build
262 CPPFLAGS="%{rpmcppflags}%{?with_papi: -I/usr/include/papi}"
263 %{?with_apidocs:%{__gtkdocize}}
264 %{__libtoolize}
265 %{__aclocal} -I m4
266 %{__autoconf}
267 %{__autoheader}
268 %{__automake}
269 %configure \
270         --disable-silent-rules \
271         %{__disable cups} \
272         %{!?with_papi:--disable-papi} \
273         %{?debug:--enable-debug=yes} \
274         %{__enable_disable apidocs gtk-doc} \
275         --enable-man \
276         %{__enable_disable static_libs static} \
277         --enable-x11-backend \
278         --enable-wayland-backend \
279         --enable-broadway-backend \
280         --with-html-dir=%{_gtkdocdir} \
281         --enable-xkb \
282         --enable-xinerama
283 %{__make} \
284         democodedir=%{_examplesdir}/%{name}-%{version}/demos/gtk-demo
285
286 %install
287 rm -rf $RPM_BUILD_ROOT
288 install -d $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/engines
289 install -d $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/theming-engines
290
291 %{__make} install \
292         democodedir=%{_examplesdir}/%{name}-%{version}/demos/gtk-demo \
293         DESTDIR=$RPM_BUILD_ROOT
294
295 touch $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/gtk.immodules
296 install -d $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/modules
297
298 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
299 cp -a _examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
300
301 # shut up check-files (static modules and *.la for modules)
302 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/*/*.la \
303         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/*/*.a}
304
305 %if "%{_lib}" != "lib"
306 # We need to have 32-bit and 64-bit binaries as they have hardcoded LIBDIR.
307 # (needed when multilib is used)
308 mv $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-3.0{,%{pqext}}
309 %endif
310
311 %{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr@ije,sr@ijekavian}
312 # unsupported by glibc
313 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{az_IR,io}
314
315 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
316
317 %find_lang %{name} --all-name
318
319 %{!?with_apidocs:%{__rm} -r $RPM_BUILD_ROOT%{_gtkdocdir}/{gdk3,gtk3}}
320
321 %clean
322 rm -rf $RPM_BUILD_ROOT
323
324 %post
325 /sbin/ldconfig
326 %glib_compile_schemas
327 umask 022
328 %{_bindir}/gtk-query-immodules-3.0%{pqext} --update-cache
329 exit 0
330
331 %postun
332 /sbin/ldconfig
333 if [ "$1" != "0" ]; then
334         umask 022
335         %{_bindir}/gtk-query-immodules-3.0%{pqext} --update-cache
336 else
337         %glib_compile_schemas
338 fi
339 exit 0
340
341 %post examples
342 %glib_compile_schemas
343
344 %postun examples
345 %glib_compile_schemas
346
347 %files -f %{name}.lang
348 %defattr(644,root,root,755)
349 %doc AUTHORS NEWS README
350 %attr(755,root,root) %{_bindir}/broadwayd
351 %attr(755,root,root) %{_bindir}/gtk-launch
352 %attr(755,root,root) %{_bindir}/gtk-query-immodules-3.0%{pqext}
353 %attr(755,root,root) %{_libdir}/libgailutil-3.so.*.*.*
354 %attr(755,root,root) %ghost %{_libdir}/libgailutil-3.so.0
355 %attr(755,root,root) %{_libdir}/libgdk-3.so.*.*.*
356 %attr(755,root,root) %ghost %{_libdir}/libgdk-3.so.0
357 %attr(755,root,root) %{_libdir}/libgtk-3.so.*.*.*
358 %attr(755,root,root) %ghost %{_libdir}/libgtk-3.so.0
359
360 %dir %{_libdir}/gtk-3.0
361 %dir %{_libdir}/gtk-3.0/modules
362 %dir %{_libdir}/gtk-3.0/%{abivers}
363 %dir %{_libdir}/gtk-3.0/%{abivers}/engines
364 %dir %{_libdir}/gtk-3.0/%{abivers}/theming-engines
365 %dir %{_libdir}/gtk-3.0/%{abivers}/immodules
366 %dir %{_libdir}/gtk-3.0/%{abivers}/printbackends
367 %ghost %{_libdir}/gtk-3.0/%{abivers}/gtk.immodules
368 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-file.so
369 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-lpr.so
370 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-am-et.so
371 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-cedilla.so
372 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-cyrillic-translit.so
373 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-inuktitut.so
374 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-ipa.so
375 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-multipress.so
376 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-thai.so
377 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-ti-er.so
378 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-ti-et.so
379 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-viqr.so
380 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-xim.so
381 %{_libdir}/girepository-1.0/Gdk-3.0.typelib
382 %{_libdir}/girepository-1.0/GdkX11-3.0.typelib
383 %{_libdir}/girepository-1.0/Gtk-3.0.typelib
384
385 %dir %{_sysconfdir}/gtk-3.0
386 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gtk-3.0/im-multipress.conf
387 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml
388 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml
389 %dir %{_datadir}/themes/Default/gtk-3.0
390 %{_datadir}/themes/Default/gtk-3.0/gtk-keys.css
391 %dir %{_datadir}/themes/Emacs
392 %dir %{_datadir}/themes/Emacs/gtk-3.0
393 %{_datadir}/themes/Emacs/gtk-3.0/gtk-keys.css
394 %{_mandir}/man1/broadwayd.1*
395 %{_mandir}/man1/gtk-launch.1*
396 %{_mandir}/man1/gtk-query-immodules-3.0.1*
397
398 %files -n gtk-update-icon-cache
399 %defattr(644,root,root,755)
400 %attr(755,root,root) %{_bindir}/gtk-update-icon-cache
401 %{_mandir}/man1/gtk-update-icon-cache.1*
402
403 %files devel
404 %defattr(644,root,root,755)
405 %doc ChangeLog
406 %attr(755,root,root) %{_libdir}/libgailutil-3.so
407 %attr(755,root,root) %{_libdir}/libgdk-3.so
408 %attr(755,root,root) %{_libdir}/libgtk-3.so
409 %{_includedir}/gail-3.0
410 %{_includedir}/gtk-3.0
411 %{_aclocaldir}/gtk-3.0.m4
412 %{_pkgconfigdir}/gail-3.0.pc
413 %{_pkgconfigdir}/gdk-3.0.pc
414 %{_pkgconfigdir}/gdk-broadway-3.0.pc
415 %{_pkgconfigdir}/gdk-wayland-3.0.pc
416 %{_pkgconfigdir}/gdk-x11-3.0.pc
417 %{_pkgconfigdir}/gtk+-3.0.pc
418 %{_pkgconfigdir}/gtk+-broadway-3.0.pc
419 %{_pkgconfigdir}/gtk+-unix-print-3.0.pc
420 %{_pkgconfigdir}/gtk+-wayland-3.0.pc
421 %{_pkgconfigdir}/gtk+-x11-3.0.pc
422 %{_datadir}/gtk-3.0
423 %{_datadir}/gir-1.0/Gdk-3.0.gir
424 %{_datadir}/gir-1.0/GdkX11-3.0.gir
425 %{_datadir}/gir-1.0/Gtk-3.0.gir
426
427 %if %{with static_libs}
428 %files static
429 %defattr(644,root,root,755)
430 %{_libdir}/libgailutil-3.a
431 %{_libdir}/libgdk-3.a
432 %{_libdir}/libgtk-3.a
433 %endif
434
435 %if %{with apidocs}
436 %files apidocs
437 %defattr(644,root,root,755)
438 %{_gtkdocdir}/gail-libgail-util3
439 %{_gtkdocdir}/gdk3
440 %{_gtkdocdir}/gtk3
441 %endif
442
443 %files examples
444 %defattr(644,root,root,755)
445 %attr(755,root,root) %{_bindir}/gtk3-demo
446 %attr(755,root,root) %{_bindir}/gtk3-demo-application
447 %attr(755,root,root) %{_bindir}/gtk3-widget-factory
448 %{_datadir}/glib-2.0/schemas/org.gtk.Demo.gschema.xml
449 %{_examplesdir}/%{name}-%{version}
450
451 %if %{with cups}
452 %files cups
453 %defattr(644,root,root,755)
454 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-cups.so
455 %endif
456
457 %if %{with papi}
458 %files papi
459 %defattr(644,root,root,755)
460 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-papi.so
461 %endif
This page took 0.088464 seconds and 2 git commands to generate.